package br.com.certificacao.Conjuntos.hashset;

import java.util.HashSet;
import java.util.Iterator;
import java.util.Set;

public class Pessoa {
	String nome;

	public String getNome() {
		return nome;
	}

	public void setNome(String nome) {
		this.nome = nome;
	}
	
	public boolean equals(Object o){
		if(o == null) return false;
		if(this == o) return true;
		boolean resultado = false;
		
		if(o instanceof Pessoa){
			Pessoa teste = (Pessoa)o;
			resultado = this.getNome()!= null && this.getNome().equals(teste.getNome());
		}
		return resultado;
	}
	public int hashCode(){
		return this.getNome() != null ? this.getNome().hashCode() : 3;
	}
	
	public String toString(){
		return this.getNome();
	}
	public static void main(String[] args) {
		
		Pessoa p = new Pessoa();
		p.setNome("Alberto");
		
		Pessoa p1 = new Pessoa();
		p1.setNome("Alberto");
		
		Set set = new HashSet();
		set.add(p);
		set.add(p1);
		
		for(Iterator iterator = set.iterator(); iterator.hasNext();){
			System.out.println(iterator.next());
		}
	}

}
